/*
 ============================================================================
 文件名 	: EasyBounceDocument.h
 描述		: 应用程序document类的声明.
 ============================================================================
 */

#ifndef __EASYBOUNCEDOCUMENT_h__
#define __EASYBOUNCEDOCUMENT_h__

// 引用
#include <akndoc.h>

// 前向声明
class CEasyBounceAppUi;
class CEikApplication;

// 类声明

/**
 * CEasyBounceDocument类
 * Document类是AVKON应用程序框架所要求的标准类.
 */
class CEasyBounceDocument : public CAknDocument
	{
public:
	// 构造和析构函数

	/**
	 * NewL.
	 * 两阶段构造函数.
	 * @参数aApp，本应用程序的app类.
	 * @返回CEasyBounceDocument类型的对象指针，指向所创建的document对象
	 */
	static CEasyBounceDocument* NewL(CEikApplication& aApp);

	/**
	 * NewLC.
	 * 两阶段构造函数.
	 * @参数aApp，本应用程序的app类.
	 * @返回CEasyBounceDocument类型的对象指针，指向所创建的document对象
	 */
	static CEasyBounceDocument* NewLC(CEikApplication& aApp);

	/**
	 * ~CEasyBounceDocument
	 * 虚析构函数.
	 */
	virtual ~CEasyBounceDocument();

public:
	// 基类函数

	/**
	 * CreateAppUiL
	 * 继承自CEikDocument, CreateAppUiL.
	 * 此函数创建一个CEasyBounceAppUi类的对象，并返回其对象指针.
	 * 返回的对象指针由Uikon框架拥有.
	 */
	CEikAppUi* CreateAppUiL();

private:
	// 构造函数

	/**
	 * ConstructL
	 * 两阶段构造函数.
	 */
	void ConstructL();

	/**
	 * CEasyBounceDocument.
	 * C++默认构造函数.
	 * @参数aApp，本应用程序的app类.
	 */
	CEasyBounceDocument(CEikApplication& aApp);

	};

#endif // __EASYBOUNCEDOCUMENT_h__
// 文件结束
